#include <stdio.h>
#include <string.h>
#include <errno.h>

struct S
{
    char arr[10];
    int age;
    float score;
};

int main()
{
    struct S s = {0};
    
    FILE* pf = fopen("test.txt", "r");
    if(pf == NULL)
    {
        perror("fopen");
        return 1;
    }

    fscanf(pf, "%s %d %f", s.arr, &(s.age), &(s.score));//读取文件//scanf从键盘读取，fscanf从文件中读取
    printf("%s %d %f\n", s.arr, s.age, s.score);
    fprintf(stdout, "%s %d %f\n", s.arr, s.age, s.score);

    //关闭文件
    fclose(pf);
    pf = NULL;
    return 0;
}

//任何一个c程序，只要运行起来就会默认打开3个流：
//FILE* stdin - 标准输入流（键盘）
//FILE* stdout - 标准输出流（屏幕）
//FILE* stderr - 标准错误流（屏幕）
//打开文件 -> 获得该文件的流